2:- ['../../CE patterns/compiled_ctm_CE_patterns.prolog'].    3
    4%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    5% Notes: 
    6% The LastTime of the dataset is 50000.
    7% TimesFile records the event recognition times, 
    8% while InputFile records the number of input events per window.
    9%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   10
   11continuousER(TimesFile, WM, Step, LastTime) :-
   12  open(TimesFile, write, TimesStream),
   13  initialiseRecognition(unordered, nopreprocessing, 1),
   14  updateManySDE( 0, WM, '1p_all' ),
   15  WMPlus1 is WM+1, 
   16  % the first event recognition time should not be counted
   17  % because there are no old input facts being retracted
   18  eventRecognition(WM, WMPlus1),
   19  CurrentTime is WM+Step,
   20  updateManySDE(WM, CurrentTime, '1p_all' ), 
   21  write('ER: '), write(CurrentTime), write(WM), nl, 
   22  statistics(cputime, [S1,T1]), 
   23  eventRecognition(CurrentTime, WM), 
   24  findall((F=V,L), (outputEntity(F=V),holdsFor(F=V,L)), CC),  
   25  statistics(cputime, [S2,T2]), T is T2-T1, S is S2-S1, %S=T2,
   26  write(TimesStream, S),
   27  NewCurrentTime is CurrentTime+Step,
   28  querying(TimesStream, WM, Step, NewCurrentTime, LastTime, [S], WorstCase),
   29  % calculate average query time
   30  sum_list(WorstCase, Sum),
   31  length(WorstCase, L),
   32  AvgTime is Sum/L,
   33  nl(TimesStream), write(TimesStream, AvgTime),
   34  % calculate max query time
   35  max_list(WorstCase, Max),
   36  nl(TimesStream), write(TimesStream, Max),
   37  close(TimesStream), !.
   38
   39querying(_TimesStream, _WM, _Step, CurrentTime, LastTime, WorstCase, WorstCase) :- 
   40  CurrentTime >= LastTime, !.
   41
   42querying(TimesStream, WM, Step, CurrentTime, LastTime, InitWorstCase, WorstCase) :- 
   43  OldCurrentTime is CurrentTime-Step,
   44  updateManySDE(OldCurrentTime, CurrentTime, '1p_all' ), 
   45  Diff is CurrentTime-WM,
   46  write('ER: '),write(CurrentTime),write(' '),write(WM),nl,
   47  statistics(cputime,[S1,T1]), 
   48  eventRecognition(CurrentTime, WM), 
   49  findall((F=V,L), (outputEntity(F=V),holdsFor(F=V,L)), CC),  
   50  statistics(cputime,[S2,T2]), 
   51  T is T2-T1, S is S2-S1, %S=T2,
   52  writeResult(S, TimesStream),
   53  NewCurrentTime is CurrentTime+Step,
   54  querying(TimesStream, WM, Step, NewCurrentTime, LastTime, [S|InitWorstCase], WorstCase).
   55
   56
   57%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   58% I/O Utils
   59%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   60
   61writeResult(Time, Stream):-
   62  write(Stream,'+'), write(Stream,Time).
   63
   64
   65% 100 vehicles, 1 per cent each
   66
   67:- ['../../data/100_vehicles/20000-21000/abrupt_deceleration20000-21000.prolog'].      %0
   68:- ['../../data/100_vehicles/20000-21000/internal_temperature_change20000-21000.prolog'].      %1
   69:- ['../../data/100_vehicles/20000-21000/passenger_density_change20000-21000.prolog'].      %2
   70:- ['../../data/100_vehicles/20000-21000/abrupt_acceleration20000-21000.prolog'].      %3
   71:- ['../../data/100_vehicles/20000-21000/stop_enter_leave20000-21000.prolog'].      %4
   72:- ['../../data/100_vehicles/20000-21000/noise_level_change20000-21000.prolog'].      %5
   73:- ['../../data/100_vehicles/20000-21000/sharp_turn20000-21000.prolog'].      %6
   74:- ['../../data/100_vehicles/26000-27000/abrupt_deceleration26000-27000.prolog'].      %7
   75:- ['../../data/100_vehicles/26000-27000/passenger_density_change26000-27000.prolog'].      %8
   76:- ['../../data/100_vehicles/26000-27000/stop_enter_leave26000-27000.prolog'].      %9
   77:- ['../../data/100_vehicles/26000-27000/noise_level_change26000-27000.prolog'].      %10
   78:- ['../../data/100_vehicles/26000-27000/sharp_turn26000-27000.prolog'].      %11
   79:- ['../../data/100_vehicles/26000-27000/internal_temperature_change26000-27000.prolog'].      %12
   80:- ['../../data/100_vehicles/26000-27000/abrupt_acceleration26000-27000.prolog'].      %13
   81:- ['../../data/100_vehicles/45000-46000/passenger_density_change45000-46000.prolog'].      %14
   82:- ['../../data/100_vehicles/45000-46000/noise_level_change45000-46000.prolog'].      %15
   83:- ['../../data/100_vehicles/45000-46000/internal_temperature_change45000-46000.prolog'].      %16
   84:- ['../../data/100_vehicles/45000-46000/stop_enter_leave45000-46000.prolog'].      %17
   85:- ['../../data/100_vehicles/45000-46000/sharp_turn45000-46000.prolog'].      %18
   86:- ['../../data/100_vehicles/45000-46000/abrupt_deceleration45000-46000.prolog'].      %19
   87:- ['../../data/100_vehicles/45000-46000/abrupt_acceleration45000-46000.prolog'].      %20
   88:- ['../../data/100_vehicles/36000-37000/abrupt_deceleration36000-37000.prolog'].      %21
   89:- ['../../data/100_vehicles/36000-37000/internal_temperature_change36000-37000.prolog'].      %22
   90:- ['../../data/100_vehicles/36000-37000/sharp_turn36000-37000.prolog'].      %23
   91:- ['../../data/100_vehicles/36000-37000/passenger_density_change36000-37000.prolog'].      %24
   92:- ['../../data/100_vehicles/36000-37000/abrupt_acceleration36000-37000.prolog'].      %25
   93:- ['../../data/100_vehicles/36000-37000/noise_level_change36000-37000.prolog'].      %26
   94:- ['../../data/100_vehicles/36000-37000/stop_enter_leave36000-37000.prolog'].      %27
   95:- ['../../data/100_vehicles/18000-19000/stop_enter_leave18000-19000.prolog'].      %28
   96:- ['../../data/100_vehicles/18000-19000/noise_level_change18000-19000.prolog'].      %29
   97:- ['../../data/100_vehicles/18000-19000/sharp_turn18000-19000.prolog'].      %30
   98:- ['../../data/100_vehicles/18000-19000/passenger_density_change18000-19000.prolog'].      %31
   99:- ['../../data/100_vehicles/18000-19000/internal_temperature_change18000-19000.prolog'].      %32
  100:- ['../../data/100_vehicles/18000-19000/abrupt_acceleration18000-19000.prolog'].      %33
  101:- ['../../data/100_vehicles/18000-19000/abrupt_deceleration18000-19000.prolog'].      %34
  102:- ['../../data/100_vehicles/10000-11000/sharp_turn10000-11000.prolog'].      %35
  103:- ['../../data/100_vehicles/10000-11000/abrupt_acceleration10000-11000.prolog'].      %36
  104:- ['../../data/100_vehicles/10000-11000/abrupt_deceleration10000-11000.prolog'].      %37
  105:- ['../../data/100_vehicles/10000-11000/passenger_density_change10000-11000.prolog'].      %38
  106:- ['../../data/100_vehicles/10000-11000/internal_temperature_change10000-11000.prolog'].      %39
  107:- ['../../data/100_vehicles/10000-11000/stop_enter_leave10000-11000.prolog'].      %40
  108:- ['../../data/100_vehicles/10000-11000/noise_level_change10000-11000.prolog'].      %41
  109:- ['../../data/100_vehicles/0-1000/abrupt_deceleration0-1000.prolog'].      %42
  110:- ['../../data/100_vehicles/0-1000/stop_enter_leave0-1000.prolog'].      %43
  111:- ['../../data/100_vehicles/0-1000/internal_temperature_change0-1000.prolog'].      %44
  112:- ['../../data/100_vehicles/0-1000/sharp_turn0-1000.prolog'].      %45
  113:- ['../../data/100_vehicles/0-1000/noise_level_change0-1000.prolog'].      %46
  114:- ['../../data/100_vehicles/0-1000/abrupt_acceleration0-1000.prolog'].      %47
  115:- ['../../data/100_vehicles/0-1000/passenger_density_change0-1000.prolog'].      %48
  116:- ['../../data/100_vehicles/34000-35000/stop_enter_leave34000-35000.prolog'].      %49
  117:- ['../../data/100_vehicles/34000-35000/sharp_turn34000-35000.prolog'].      %50
  118:- ['../../data/100_vehicles/34000-35000/noise_level_change34000-35000.prolog'].      %51
  119:- ['../../data/100_vehicles/34000-35000/internal_temperature_change34000-35000.prolog'].      %52
  120:- ['../../data/100_vehicles/34000-35000/passenger_density_change34000-35000.prolog'].      %53
  121:- ['../../data/100_vehicles/34000-35000/abrupt_deceleration34000-35000.prolog'].      %54
  122:- ['../../data/100_vehicles/34000-35000/abrupt_acceleration34000-35000.prolog'].      %55
  123:- ['../../data/100_vehicles/11000-12000/sharp_turn11000-12000.prolog'].      %56
  124:- ['../../data/100_vehicles/11000-12000/passenger_density_change11000-12000.prolog'].      %57
  125:- ['../../data/100_vehicles/11000-12000/abrupt_acceleration11000-12000.prolog'].      %58
  126:- ['../../data/100_vehicles/11000-12000/noise_level_change11000-12000.prolog'].      %59
  127:- ['../../data/100_vehicles/11000-12000/abrupt_deceleration11000-12000.prolog'].      %60
  128:- ['../../data/100_vehicles/11000-12000/internal_temperature_change11000-12000.prolog'].      %61
  129:- ['../../data/100_vehicles/11000-12000/stop_enter_leave11000-12000.prolog'].      %62
  130:- ['../../data/100_vehicles/7000-8000/stop_enter_leave7000-8000.prolog'].      %63
  131:- ['../../data/100_vehicles/7000-8000/internal_temperature_change7000-8000.prolog'].      %64
  132:- ['../../data/100_vehicles/7000-8000/passenger_density_change7000-8000.prolog'].      %65
  133:- ['../../data/100_vehicles/7000-8000/sharp_turn7000-8000.prolog'].      %66
  134:- ['../../data/100_vehicles/7000-8000/abrupt_deceleration7000-8000.prolog'].      %67
  135:- ['../../data/100_vehicles/7000-8000/abrupt_acceleration7000-8000.prolog'].      %68
  136:- ['../../data/100_vehicles/7000-8000/noise_level_change7000-8000.prolog'].      %69
  137:- ['../../data/100_vehicles/6000-7000/passenger_density_change6000-7000.prolog'].      %70
  138:- ['../../data/100_vehicles/6000-7000/abrupt_deceleration6000-7000.prolog'].      %71
  139:- ['../../data/100_vehicles/6000-7000/abrupt_acceleration6000-7000.prolog'].      %72
  140:- ['../../data/100_vehicles/6000-7000/internal_temperature_change6000-7000.prolog'].      %73
  141:- ['../../data/100_vehicles/6000-7000/noise_level_change6000-7000.prolog'].      %74
  142:- ['../../data/100_vehicles/6000-7000/sharp_turn6000-7000.prolog'].      %75
  143:- ['../../data/100_vehicles/6000-7000/stop_enter_leave6000-7000.prolog'].      %76
  144:- ['../../data/100_vehicles/47000-48000/abrupt_acceleration47000-48000.prolog'].      %77
  145:- ['../../data/100_vehicles/47000-48000/internal_temperature_change47000-48000.prolog'].      %78
  146:- ['../../data/100_vehicles/47000-48000/sharp_turn47000-48000.prolog'].      %79
  147:- ['../../data/100_vehicles/47000-48000/abrupt_deceleration47000-48000.prolog'].      %80
  148:- ['../../data/100_vehicles/47000-48000/passenger_density_change47000-48000.prolog'].      %81
  149:- ['../../data/100_vehicles/47000-48000/noise_level_change47000-48000.prolog'].      %82
  150:- ['../../data/100_vehicles/47000-48000/stop_enter_leave47000-48000.prolog'].      %83
  151:- ['../../data/100_vehicles/9000-10000/noise_level_change9000-10000.prolog'].      %84
  152:- ['../../data/100_vehicles/9000-10000/internal_temperature_change9000-10000.prolog'].      %85
  153:- ['../../data/100_vehicles/9000-10000/sharp_turn9000-10000.prolog'].      %86
  154:- ['../../data/100_vehicles/9000-10000/stop_enter_leave9000-10000.prolog'].      %87
  155:- ['../../data/100_vehicles/9000-10000/abrupt_acceleration9000-10000.prolog'].      %88
  156:- ['../../data/100_vehicles/9000-10000/passenger_density_change9000-10000.prolog'].      %89
  157:- ['../../data/100_vehicles/9000-10000/abrupt_deceleration9000-10000.prolog'].      %90
  158:- ['../../data/100_vehicles/24000-25000/sharp_turn24000-25000.prolog'].      %91
  159:- ['../../data/100_vehicles/24000-25000/abrupt_acceleration24000-25000.prolog'].      %92
  160:- ['../../data/100_vehicles/24000-25000/stop_enter_leave24000-25000.prolog'].      %93
  161:- ['../../data/100_vehicles/24000-25000/passenger_density_change24000-25000.prolog'].      %94
  162:- ['../../data/100_vehicles/24000-25000/abrupt_deceleration24000-25000.prolog'].      %95
  163:- ['../../data/100_vehicles/24000-25000/noise_level_change24000-25000.prolog'].      %96
  164:- ['../../data/100_vehicles/24000-25000/internal_temperature_change24000-25000.prolog'].      %97
  165:- ['../../data/100_vehicles/42000-43000/sharp_turn42000-43000.prolog'].      %98
  166:- ['../../data/100_vehicles/42000-43000/internal_temperature_change42000-43000.prolog'].      %99
  167:- ['../../data/100_vehicles/42000-43000/stop_enter_leave42000-43000.prolog'].      %100
  168:- ['../../data/100_vehicles/42000-43000/abrupt_deceleration42000-43000.prolog'].      %101
  169:- ['../../data/100_vehicles/42000-43000/passenger_density_change42000-43000.prolog'].      %102
  170:- ['../../data/100_vehicles/42000-43000/noise_level_change42000-43000.prolog'].      %103
  171:- ['../../data/100_vehicles/42000-43000/abrupt_acceleration42000-43000.prolog'].      %104
  172:- ['../../data/100_vehicles/37000-38000/noise_level_change37000-38000.prolog'].      %105
  173:- ['../../data/100_vehicles/37000-38000/passenger_density_change37000-38000.prolog'].      %106
  174:- ['../../data/100_vehicles/37000-38000/abrupt_deceleration37000-38000.prolog'].      %107
  175:- ['../../data/100_vehicles/37000-38000/sharp_turn37000-38000.prolog'].      %108
  176:- ['../../data/100_vehicles/37000-38000/internal_temperature_change37000-38000.prolog'].      %109
  177:- ['../../data/100_vehicles/37000-38000/stop_enter_leave37000-38000.prolog'].      %110
  178:- ['../../data/100_vehicles/37000-38000/abrupt_acceleration37000-38000.prolog'].      %111
  179:- ['../../data/100_vehicles/14000-15000/internal_temperature_change14000-15000.prolog'].      %112
  180:- ['../../data/100_vehicles/14000-15000/noise_level_change14000-15000.prolog'].      %113
  181:- ['../../data/100_vehicles/14000-15000/abrupt_acceleration14000-15000.prolog'].      %114
  182:- ['../../data/100_vehicles/14000-15000/stop_enter_leave14000-15000.prolog'].      %115
  183:- ['../../data/100_vehicles/14000-15000/passenger_density_change14000-15000.prolog'].      %116
  184:- ['../../data/100_vehicles/14000-15000/sharp_turn14000-15000.prolog'].      %117
  185:- ['../../data/100_vehicles/14000-15000/abrupt_deceleration14000-15000.prolog'].      %118
  186:- ['../../data/100_vehicles/32000-33000/stop_enter_leave32000-33000.prolog'].      %119
  187:- ['../../data/100_vehicles/32000-33000/abrupt_acceleration32000-33000.prolog'].      %120
  188:- ['../../data/100_vehicles/32000-33000/noise_level_change32000-33000.prolog'].      %121
  189:- ['../../data/100_vehicles/32000-33000/abrupt_deceleration32000-33000.prolog'].      %122
  190:- ['../../data/100_vehicles/32000-33000/internal_temperature_change32000-33000.prolog'].      %123
  191:- ['../../data/100_vehicles/32000-33000/passenger_density_change32000-33000.prolog'].      %124
  192:- ['../../data/100_vehicles/32000-33000/sharp_turn32000-33000.prolog'].      %125
  193:- ['../../data/100_vehicles/8000-9000/internal_temperature_change8000-9000.prolog'].      %126
  194:- ['../../data/100_vehicles/8000-9000/stop_enter_leave8000-9000.prolog'].      %127
  195:- ['../../data/100_vehicles/8000-9000/passenger_density_change8000-9000.prolog'].      %128
  196:- ['../../data/100_vehicles/8000-9000/sharp_turn8000-9000.prolog'].      %129
  197:- ['../../data/100_vehicles/8000-9000/abrupt_deceleration8000-9000.prolog'].      %130
  198:- ['../../data/100_vehicles/8000-9000/noise_level_change8000-9000.prolog'].      %131
  199:- ['../../data/100_vehicles/8000-9000/abrupt_acceleration8000-9000.prolog'].      %132
  200:- ['../../data/100_vehicles/17000-18000/noise_level_change17000-18000.prolog'].      %133
  201:- ['../../data/100_vehicles/17000-18000/abrupt_acceleration17000-18000.prolog'].      %134
  202:- ['../../data/100_vehicles/17000-18000/stop_enter_leave17000-18000.prolog'].      %135
  203:- ['../../data/100_vehicles/17000-18000/abrupt_deceleration17000-18000.prolog'].      %136
  204:- ['../../data/100_vehicles/17000-18000/passenger_density_change17000-18000.prolog'].      %137
  205:- ['../../data/100_vehicles/17000-18000/internal_temperature_change17000-18000.prolog'].      %138
  206:- ['../../data/100_vehicles/17000-18000/sharp_turn17000-18000.prolog'].      %139
  207:- ['../../data/100_vehicles/43000-44000/stop_enter_leave43000-44000.prolog'].      %140
  208:- ['../../data/100_vehicles/43000-44000/abrupt_acceleration43000-44000.prolog'].      %141
  209:- ['../../data/100_vehicles/43000-44000/noise_level_change43000-44000.prolog'].      %142
  210:- ['../../data/100_vehicles/43000-44000/passenger_density_change43000-44000.prolog'].      %143
  211:- ['../../data/100_vehicles/43000-44000/abrupt_deceleration43000-44000.prolog'].      %144
  212:- ['../../data/100_vehicles/43000-44000/sharp_turn43000-44000.prolog'].      %145
  213:- ['../../data/100_vehicles/43000-44000/internal_temperature_change43000-44000.prolog'].      %146
  214:- ['../../data/100_vehicles/44000-45000/noise_level_change44000-45000.prolog'].      %147
  215:- ['../../data/100_vehicles/44000-45000/stop_enter_leave44000-45000.prolog'].      %148
  216:- ['../../data/100_vehicles/44000-45000/internal_temperature_change44000-45000.prolog'].      %149
  217:- ['../../data/100_vehicles/44000-45000/abrupt_deceleration44000-45000.prolog'].      %150
  218:- ['../../data/100_vehicles/44000-45000/abrupt_acceleration44000-45000.prolog'].      %151
  219:- ['../../data/100_vehicles/44000-45000/sharp_turn44000-45000.prolog'].      %152
  220:- ['../../data/100_vehicles/44000-45000/passenger_density_change44000-45000.prolog'].      %153
  221:- ['../../data/100_vehicles/2000-3000/sharp_turn2000-3000.prolog'].      %154
  222:- ['../../data/100_vehicles/2000-3000/abrupt_acceleration2000-3000.prolog'].      %155
  223:- ['../../data/100_vehicles/2000-3000/passenger_density_change2000-3000.prolog'].      %156
  224:- ['../../data/100_vehicles/2000-3000/abrupt_deceleration2000-3000.prolog'].      %157
  225:- ['../../data/100_vehicles/2000-3000/internal_temperature_change2000-3000.prolog'].      %158
  226:- ['../../data/100_vehicles/2000-3000/stop_enter_leave2000-3000.prolog'].      %159
  227:- ['../../data/100_vehicles/2000-3000/noise_level_change2000-3000.prolog'].      %160
  228:- ['../../data/100_vehicles/4000-5000/abrupt_acceleration4000-5000.prolog'].      %161
  229:- ['../../data/100_vehicles/4000-5000/passenger_density_change4000-5000.prolog'].      %162
  230:- ['../../data/100_vehicles/4000-5000/internal_temperature_change4000-5000.prolog'].      %163
  231:- ['../../data/100_vehicles/4000-5000/stop_enter_leave4000-5000.prolog'].      %164
  232:- ['../../data/100_vehicles/4000-5000/sharp_turn4000-5000.prolog'].      %165
  233:- ['../../data/100_vehicles/4000-5000/abrupt_deceleration4000-5000.prolog'].      %166
  234:- ['../../data/100_vehicles/4000-5000/noise_level_change4000-5000.prolog'].      %167
  235:- ['../../data/100_vehicles/19000-20000/sharp_turn19000-20000.prolog'].      %168
  236:- ['../../data/100_vehicles/19000-20000/passenger_density_change19000-20000.prolog'].      %169
  237:- ['../../data/100_vehicles/19000-20000/abrupt_deceleration19000-20000.prolog'].      %170
  238:- ['../../data/100_vehicles/19000-20000/noise_level_change19000-20000.prolog'].      %171
  239:- ['../../data/100_vehicles/19000-20000/internal_temperature_change19000-20000.prolog'].      %172
  240:- ['../../data/100_vehicles/19000-20000/abrupt_acceleration19000-20000.prolog'].      %173
  241:- ['../../data/100_vehicles/19000-20000/stop_enter_leave19000-20000.prolog'].      %174
  242:- ['../../data/100_vehicles/13000-14000/stop_enter_leave13000-14000.prolog'].      %175
  243:- ['../../data/100_vehicles/13000-14000/abrupt_acceleration13000-14000.prolog'].      %176
  244:- ['../../data/100_vehicles/13000-14000/internal_temperature_change13000-14000.prolog'].      %177
  245:- ['../../data/100_vehicles/13000-14000/noise_level_change13000-14000.prolog'].      %178
  246:- ['../../data/100_vehicles/13000-14000/abrupt_deceleration13000-14000.prolog'].      %179
  247:- ['../../data/100_vehicles/13000-14000/sharp_turn13000-14000.prolog'].      %180
  248:- ['../../data/100_vehicles/13000-14000/passenger_density_change13000-14000.prolog'].      %181
  249:- ['../../data/100_vehicles/33000-34000/passenger_density_change33000-34000.prolog'].      %182
  250:- ['../../data/100_vehicles/33000-34000/internal_temperature_change33000-34000.prolog'].      %183
  251:- ['../../data/100_vehicles/33000-34000/abrupt_deceleration33000-34000.prolog'].      %184
  252:- ['../../data/100_vehicles/33000-34000/noise_level_change33000-34000.prolog'].      %185
  253:- ['../../data/100_vehicles/33000-34000/stop_enter_leave33000-34000.prolog'].      %186
  254:- ['../../data/100_vehicles/33000-34000/sharp_turn33000-34000.prolog'].      %187
  255:- ['../../data/100_vehicles/33000-34000/abrupt_acceleration33000-34000.prolog'].      %188
  256:- ['../../data/100_vehicles/49000-50000/abrupt_acceleration49000-50000.prolog'].      %189
  257:- ['../../data/100_vehicles/49000-50000/sharp_turn49000-50000.prolog'].      %190
  258:- ['../../data/100_vehicles/49000-50000/noise_level_change49000-50000.prolog'].      %191
  259:- ['../../data/100_vehicles/49000-50000/abrupt_deceleration49000-50000.prolog'].      %192
  260:- ['../../data/100_vehicles/49000-50000/stop_enter_leave49000-50000.prolog'].      %193
  261:- ['../../data/100_vehicles/49000-50000/internal_temperature_change49000-50000.prolog'].      %194
  262:- ['../../data/100_vehicles/49000-50000/passenger_density_change49000-50000.prolog'].      %195
  263:- ['../../data/100_vehicles/30000-31000/noise_level_change30000-31000.prolog'].      %196
  264:- ['../../data/100_vehicles/30000-31000/abrupt_deceleration30000-31000.prolog'].      %197
  265:- ['../../data/100_vehicles/30000-31000/sharp_turn30000-31000.prolog'].      %198
  266:- ['../../data/100_vehicles/30000-31000/stop_enter_leave30000-31000.prolog'].      %199
  267:- ['../../data/100_vehicles/30000-31000/internal_temperature_change30000-31000.prolog'].      %200
  268:- ['../../data/100_vehicles/30000-31000/passenger_density_change30000-31000.prolog'].      %201
  269:- ['../../data/100_vehicles/30000-31000/abrupt_acceleration30000-31000.prolog'].      %202
  270:- ['../../data/100_vehicles/28000-29000/stop_enter_leave28000-29000.prolog'].      %203
  271:- ['../../data/100_vehicles/28000-29000/noise_level_change28000-29000.prolog'].      %204
  272:- ['../../data/100_vehicles/28000-29000/passenger_density_change28000-29000.prolog'].      %205
  273:- ['../../data/100_vehicles/28000-29000/abrupt_acceleration28000-29000.prolog'].      %206
  274:- ['../../data/100_vehicles/28000-29000/internal_temperature_change28000-29000.prolog'].      %207
  275:- ['../../data/100_vehicles/28000-29000/sharp_turn28000-29000.prolog'].      %208
  276:- ['../../data/100_vehicles/28000-29000/abrupt_deceleration28000-29000.prolog'].      %209
  277:- ['../../data/100_vehicles/5000-6000/internal_temperature_change5000-6000.prolog'].      %210
  278:- ['../../data/100_vehicles/5000-6000/abrupt_acceleration5000-6000.prolog'].      %211
  279:- ['../../data/100_vehicles/5000-6000/noise_level_change5000-6000.prolog'].      %212
  280:- ['../../data/100_vehicles/5000-6000/abrupt_deceleration5000-6000.prolog'].      %213
  281:- ['../../data/100_vehicles/5000-6000/passenger_density_change5000-6000.prolog'].      %214
  282:- ['../../data/100_vehicles/5000-6000/stop_enter_leave5000-6000.prolog'].      %215
  283:- ['../../data/100_vehicles/5000-6000/sharp_turn5000-6000.prolog'].      %216
  284:- ['../../data/100_vehicles/35000-36000/noise_level_change35000-36000.prolog'].      %217
  285:- ['../../data/100_vehicles/35000-36000/abrupt_deceleration35000-36000.prolog'].      %218
  286:- ['../../data/100_vehicles/35000-36000/abrupt_acceleration35000-36000.prolog'].      %219
  287:- ['../../data/100_vehicles/35000-36000/internal_temperature_change35000-36000.prolog'].      %220
  288:- ['../../data/100_vehicles/35000-36000/passenger_density_change35000-36000.prolog'].      %221
  289:- ['../../data/100_vehicles/35000-36000/stop_enter_leave35000-36000.prolog'].      %222
  290:- ['../../data/100_vehicles/35000-36000/sharp_turn35000-36000.prolog'].      %223
  291:- ['../../data/100_vehicles/38000-39000/passenger_density_change38000-39000.prolog'].      %224
  292:- ['../../data/100_vehicles/38000-39000/sharp_turn38000-39000.prolog'].      %225
  293:- ['../../data/100_vehicles/38000-39000/abrupt_acceleration38000-39000.prolog'].      %226
  294:- ['../../data/100_vehicles/38000-39000/abrupt_deceleration38000-39000.prolog'].      %227
  295:- ['../../data/100_vehicles/38000-39000/internal_temperature_change38000-39000.prolog'].      %228
  296:- ['../../data/100_vehicles/38000-39000/stop_enter_leave38000-39000.prolog'].      %229
  297:- ['../../data/100_vehicles/38000-39000/noise_level_change38000-39000.prolog'].      %230
  298:- ['../../data/100_vehicles/22000-23000/passenger_density_change22000-23000.prolog'].      %231
  299:- ['../../data/100_vehicles/22000-23000/abrupt_acceleration22000-23000.prolog'].      %232
  300:- ['../../data/100_vehicles/22000-23000/stop_enter_leave22000-23000.prolog'].      %233
  301:- ['../../data/100_vehicles/22000-23000/sharp_turn22000-23000.prolog'].      %234
  302:- ['../../data/100_vehicles/22000-23000/noise_level_change22000-23000.prolog'].      %235
  303:- ['../../data/100_vehicles/22000-23000/abrupt_deceleration22000-23000.prolog'].      %236
  304:- ['../../data/100_vehicles/22000-23000/internal_temperature_change22000-23000.prolog'].      %237
  305:- ['../../data/100_vehicles/31000-32000/stop_enter_leave31000-32000.prolog'].      %238
  306:- ['../../data/100_vehicles/31000-32000/abrupt_acceleration31000-32000.prolog'].      %239
  307:- ['../../data/100_vehicles/31000-32000/passenger_density_change31000-32000.prolog'].      %240
  308:- ['../../data/100_vehicles/31000-32000/sharp_turn31000-32000.prolog'].      %241
  309:- ['../../data/100_vehicles/31000-32000/noise_level_change31000-32000.prolog'].      %242
  310:- ['../../data/100_vehicles/31000-32000/internal_temperature_change31000-32000.prolog'].      %243
  311:- ['../../data/100_vehicles/31000-32000/abrupt_deceleration31000-32000.prolog'].      %244
  312:- ['../../data/100_vehicles/39000-40000/internal_temperature_change39000-40000.prolog'].      %245
  313:- ['../../data/100_vehicles/39000-40000/stop_enter_leave39000-40000.prolog'].      %246
  314:- ['../../data/100_vehicles/39000-40000/abrupt_acceleration39000-40000.prolog'].      %247
  315:- ['../../data/100_vehicles/39000-40000/sharp_turn39000-40000.prolog'].      %248
  316:- ['../../data/100_vehicles/39000-40000/noise_level_change39000-40000.prolog'].      %249
  317:- ['../../data/100_vehicles/39000-40000/passenger_density_change39000-40000.prolog'].      %250
  318:- ['../../data/100_vehicles/39000-40000/abrupt_deceleration39000-40000.prolog'].      %251
  319:- ['../../data/100_vehicles/48000-49000/stop_enter_leave48000-49000.prolog'].      %252
  320:- ['../../data/100_vehicles/48000-49000/passenger_density_change48000-49000.prolog'].      %253
  321:- ['../../data/100_vehicles/48000-49000/internal_temperature_change48000-49000.prolog'].      %254
  322:- ['../../data/100_vehicles/48000-49000/abrupt_acceleration48000-49000.prolog'].      %255
  323:- ['../../data/100_vehicles/48000-49000/sharp_turn48000-49000.prolog'].      %256
  324:- ['../../data/100_vehicles/48000-49000/noise_level_change48000-49000.prolog'].      %257
  325:- ['../../data/100_vehicles/48000-49000/abrupt_deceleration48000-49000.prolog'].      %258
  326:- ['../../data/100_vehicles/15000-16000/noise_level_change15000-16000.prolog'].      %259
  327:- ['../../data/100_vehicles/15000-16000/sharp_turn15000-16000.prolog'].      %260
  328:- ['../../data/100_vehicles/15000-16000/abrupt_deceleration15000-16000.prolog'].      %261
  329:- ['../../data/100_vehicles/15000-16000/passenger_density_change15000-16000.prolog'].      %262
  330:- ['../../data/100_vehicles/15000-16000/stop_enter_leave15000-16000.prolog'].      %263
  331:- ['../../data/100_vehicles/15000-16000/abrupt_acceleration15000-16000.prolog'].      %264
  332:- ['../../data/100_vehicles/15000-16000/internal_temperature_change15000-16000.prolog'].      %265
  333:- ['../../data/100_vehicles/46000-47000/stop_enter_leave46000-47000.prolog'].      %266
  334:- ['../../data/100_vehicles/46000-47000/passenger_density_change46000-47000.prolog'].      %267
  335:- ['../../data/100_vehicles/46000-47000/noise_level_change46000-47000.prolog'].      %268
  336:- ['../../data/100_vehicles/46000-47000/abrupt_deceleration46000-47000.prolog'].      %269
  337:- ['../../data/100_vehicles/46000-47000/internal_temperature_change46000-47000.prolog'].      %270
  338:- ['../../data/100_vehicles/46000-47000/abrupt_acceleration46000-47000.prolog'].      %271
  339:- ['../../data/100_vehicles/46000-47000/sharp_turn46000-47000.prolog'].      %272
  340:- ['../../data/100_vehicles/1000-2000/stop_enter_leave1000-2000.prolog'].      %273
  341:- ['../../data/100_vehicles/1000-2000/passenger_density_change1000-2000.prolog'].      %274
  342:- ['../../data/100_vehicles/1000-2000/abrupt_acceleration1000-2000.prolog'].      %275
  343:- ['../../data/100_vehicles/1000-2000/noise_level_change1000-2000.prolog'].      %276
  344:- ['../../data/100_vehicles/1000-2000/sharp_turn1000-2000.prolog'].      %277
  345:- ['../../data/100_vehicles/1000-2000/abrupt_deceleration1000-2000.prolog'].      %278
  346:- ['../../data/100_vehicles/1000-2000/internal_temperature_change1000-2000.prolog'].      %279
  347:- ['../../data/100_vehicles/25000-26000/internal_temperature_change25000-26000.prolog'].      %280
  348:- ['../../data/100_vehicles/25000-26000/sharp_turn25000-26000.prolog'].      %281
  349:- ['../../data/100_vehicles/25000-26000/noise_level_change25000-26000.prolog'].      %282
  350:- ['../../data/100_vehicles/25000-26000/abrupt_deceleration25000-26000.prolog'].      %283
  351:- ['../../data/100_vehicles/25000-26000/stop_enter_leave25000-26000.prolog'].      %284
  352:- ['../../data/100_vehicles/25000-26000/abrupt_acceleration25000-26000.prolog'].      %285
  353:- ['../../data/100_vehicles/25000-26000/passenger_density_change25000-26000.prolog'].      %286
  354:- ['../../data/100_vehicles/40000-41000/stop_enter_leave40000-41000.prolog'].      %287
  355:- ['../../data/100_vehicles/40000-41000/internal_temperature_change40000-41000.prolog'].      %288
  356:- ['../../data/100_vehicles/40000-41000/sharp_turn40000-41000.prolog'].      %289
  357:- ['../../data/100_vehicles/40000-41000/noise_level_change40000-41000.prolog'].      %290
  358:- ['../../data/100_vehicles/40000-41000/abrupt_acceleration40000-41000.prolog'].      %291
  359:- ['../../data/100_vehicles/40000-41000/passenger_density_change40000-41000.prolog'].      %292
  360:- ['../../data/100_vehicles/40000-41000/abrupt_deceleration40000-41000.prolog'].      %293
  361:- ['../../data/100_vehicles/21000-22000/abrupt_deceleration21000-22000.prolog'].      %294
  362:- ['../../data/100_vehicles/21000-22000/passenger_density_change21000-22000.prolog'].      %295
  363:- ['../../data/100_vehicles/21000-22000/sharp_turn21000-22000.prolog'].      %296
  364:- ['../../data/100_vehicles/21000-22000/abrupt_acceleration21000-22000.prolog'].      %297
  365:- ['../../data/100_vehicles/21000-22000/noise_level_change21000-22000.prolog'].      %298
  366:- ['../../data/100_vehicles/21000-22000/internal_temperature_change21000-22000.prolog'].      %299
  367:- ['../../data/100_vehicles/21000-22000/stop_enter_leave21000-22000.prolog'].      %300
  368:- ['../../data/100_vehicles/41000-42000/noise_level_change41000-42000.prolog'].      %301
  369:- ['../../data/100_vehicles/41000-42000/abrupt_acceleration41000-42000.prolog'].      %302
  370:- ['../../data/100_vehicles/41000-42000/passenger_density_change41000-42000.prolog'].      %303
  371:- ['../../data/100_vehicles/41000-42000/abrupt_deceleration41000-42000.prolog'].      %304
  372:- ['../../data/100_vehicles/41000-42000/internal_temperature_change41000-42000.prolog'].      %305
  373:- ['../../data/100_vehicles/41000-42000/stop_enter_leave41000-42000.prolog'].      %306
  374:- ['../../data/100_vehicles/41000-42000/sharp_turn41000-42000.prolog'].      %307
  375:- ['../../data/100_vehicles/23000-24000/noise_level_change23000-24000.prolog'].      %308
  376:- ['../../data/100_vehicles/23000-24000/passenger_density_change23000-24000.prolog'].      %309
  377:- ['../../data/100_vehicles/23000-24000/stop_enter_leave23000-24000.prolog'].      %310
  378:- ['../../data/100_vehicles/23000-24000/sharp_turn23000-24000.prolog'].      %311
  379:- ['../../data/100_vehicles/23000-24000/abrupt_deceleration23000-24000.prolog'].      %312
  380:- ['../../data/100_vehicles/23000-24000/abrupt_acceleration23000-24000.prolog'].      %313
  381:- ['../../data/100_vehicles/23000-24000/internal_temperature_change23000-24000.prolog'].      %314
  382:- ['../../data/100_vehicles/16000-17000/sharp_turn16000-17000.prolog'].      %315
  383:- ['../../data/100_vehicles/16000-17000/abrupt_deceleration16000-17000.prolog'].      %316
  384:- ['../../data/100_vehicles/16000-17000/internal_temperature_change16000-17000.prolog'].      %317
  385:- ['../../data/100_vehicles/16000-17000/passenger_density_change16000-17000.prolog'].      %318
  386:- ['../../data/100_vehicles/16000-17000/abrupt_acceleration16000-17000.prolog'].      %319
  387:- ['../../data/100_vehicles/16000-17000/stop_enter_leave16000-17000.prolog'].      %320
  388:- ['../../data/100_vehicles/16000-17000/noise_level_change16000-17000.prolog'].      %321
  389:- ['../../data/100_vehicles/29000-30000/passenger_density_change29000-30000.prolog'].      %322
  390:- ['../../data/100_vehicles/29000-30000/internal_temperature_change29000-30000.prolog'].      %323
  391:- ['../../data/100_vehicles/29000-30000/noise_level_change29000-30000.prolog'].      %324
  392:- ['../../data/100_vehicles/29000-30000/abrupt_deceleration29000-30000.prolog'].      %325
  393:- ['../../data/100_vehicles/29000-30000/abrupt_acceleration29000-30000.prolog'].      %326
  394:- ['../../data/100_vehicles/29000-30000/stop_enter_leave29000-30000.prolog'].      %327
  395:- ['../../data/100_vehicles/29000-30000/sharp_turn29000-30000.prolog'].      %328
  396:- ['../../data/100_vehicles/12000-13000/stop_enter_leave12000-13000.prolog'].      %329
  397:- ['../../data/100_vehicles/12000-13000/sharp_turn12000-13000.prolog'].      %330
  398:- ['../../data/100_vehicles/12000-13000/internal_temperature_change12000-13000.prolog'].      %331
  399:- ['../../data/100_vehicles/12000-13000/noise_level_change12000-13000.prolog'].      %332
  400:- ['../../data/100_vehicles/12000-13000/abrupt_acceleration12000-13000.prolog'].      %333
  401:- ['../../data/100_vehicles/12000-13000/abrupt_deceleration12000-13000.prolog'].      %334
  402:- ['../../data/100_vehicles/12000-13000/passenger_density_change12000-13000.prolog'].      %335
  403:- ['../../data/100_vehicles/27000-28000/passenger_density_change27000-28000.prolog'].      %336
  404:- ['../../data/100_vehicles/27000-28000/abrupt_deceleration27000-28000.prolog'].      %337
  405:- ['../../data/100_vehicles/27000-28000/internal_temperature_change27000-28000.prolog'].      %338
  406:- ['../../data/100_vehicles/27000-28000/stop_enter_leave27000-28000.prolog'].      %339
  407:- ['../../data/100_vehicles/27000-28000/noise_level_change27000-28000.prolog'].      %340
  408:- ['../../data/100_vehicles/27000-28000/sharp_turn27000-28000.prolog'].      %341
  409:- ['../../data/100_vehicles/27000-28000/abrupt_acceleration27000-28000.prolog'].      %342
  410:- ['../../data/100_vehicles/3000-4000/internal_temperature_change3000-4000.prolog'].      %343
  411:- ['../../data/100_vehicles/3000-4000/stop_enter_leave3000-4000.prolog'].      %344
  412:- ['../../data/100_vehicles/3000-4000/abrupt_acceleration3000-4000.prolog'].      %345
  413:- ['../../data/100_vehicles/3000-4000/abrupt_deceleration3000-4000.prolog'].      %346
  414:- ['../../data/100_vehicles/3000-4000/sharp_turn3000-4000.prolog'].      %347
  415:- ['../../data/100_vehicles/3000-4000/noise_level_change3000-4000.prolog'].      %348
  416:- ['../../data/100_vehicles/3000-4000/passenger_density_change3000-4000.prolog'].      %349
  417:- ['../../data/100_vehicles/vehicles.prolog'].  418
  419updateSDE( Start, End, Id ) :-
  420	updateSDE( abrupt_acceleration, Id, Start, End ),
  421	updateSDE( abrupt_deceleration, Id, Start, End ),
  422	updateSDE( sharp_turn, Id, Start, End ),
  423	updateSDE( internal_temperature_change, Id, Start, End ),
  424	updateSDE( noise_level_change, Id, Start, End ),
  425	updateSDE( passenger_density_change, Id, Start, End ),
  426	updateSDE( stop_enter_leave, Id, Start, End ).
  427
  428updateManySDE( Start, End, Id ) :-
  429	Diff is End-Start,
  430	Diff =< 1000,
  431	!,
  432	updateSDE( Start, End, Id ).	
  433
  434updateManySDE( Start, End, Id ) :-
  435	Diff is End-Start,
  436	Diff > 1000,
  437	NewStart is Start + 1000,
  438	updateSDE( Start, NewStart, Id ),
  439	updateManySDE( NewStart, End, Id )